import 'package:aihu_getx_app/app/modules/d/d_my/models/dept.dart';
import 'package:aihu_getx_app/app/modules/d/d_my/models/post.dart';
import 'package:aihu_getx_app/app/modules/d/d_my/models/role.dart';
import 'package:aihu_getx_app/app/modules/d/d_my/models/social_user.dart';
import 'package:json_annotation/json_annotation.dart';

part 'user_profile_resp_vo.g.dart';

@JsonSerializable()
class UserProfileRespVO {
  int? id, deptId, sex, status;
  String? username,
      nickname,
      remark,
      email,
      mobile,
      avatar,
      loginIp,
      loginDate,
      createTime;
  List<int>? postIds;
  List<Role>? roles;
  Dept? dept;
  List<Post>? posts;
  List<SocialUser>? socialUsers;

  UserProfileRespVO({
    this.id,
    this.deptId,
    this.sex,
    this.status,
    this.username,
    this.nickname,
    this.remark,
    this.email,
    this.mobile,
    this.avatar,
    this.loginDate,
    this.loginIp,
    this.postIds,
    this.roles,
    this.dept,
    this.posts,
    this.socialUsers,
  });

  factory UserProfileRespVO.fromJson(Map<String, dynamic> json) =>
      _$UserProfileRespVOFromJson(json);

  Map<String, dynamic> toJson() => _$UserProfileRespVOToJson(this);
}
